package com.huangjue.backend.service;

import com.huangjue.backend.entity.Course;
import com.huangjue.backend.dto.CourseWithTeacherDTO;
import com.huangjue.backend.entity.StudentCourse;

import java.util.List;

public interface CourseService {

    /**
     * 获取所有课程信息
     */
    List<Course> getAllCourses();

    /*
    * 搜索课程
    * */
    List<Course> getCoursesByKeywords(String keyword);

    /*
    * 获取推荐课程
    * */
    List<Course> getRecommendCourse();

    List<CourseWithTeacherDTO> getAllCoursesWithTeacher();

    List<Course> getCoursesByTeacherId(Integer teacherId);

    List<StudentCourse> getUserCourses(Integer userId);

    /**
     * 更新课程浏览量
     */
    boolean updateCourseViews(Integer courseId);

    /**
     * 更新课程点赞数
     */
    boolean updateCourseLikes(Integer courseId);

    List<Course> getCoursesByCategoryId(Integer categoryId);

    // 新增：按ID查询课程
    Course getCourseById(Integer courseId);
}